home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 4 / Info_Mac IV CD-ROM (Pacific HiTech Inc.)(August 1994).iso / Development / General / MacMETH3.2.1 Folder / MacMETH3.2.1 Disk 1⁄2 / Examples / In.MOD < prev    next >
Text File  |  1994-03-21  |  1KB  |  54 lines

  1. IMPLEMENTATION MODULE In;
  2.  
  3. IMPORT InOut;
  4.  
  5.   PROCEDURE Open;
  6.   BEGIN    InOut.OpenInput("")
  7.   END Open;
  8.  
  9.   PROCEDURE Char(VAR ch: CHAR);
  10.   BEGIN
  11.        IF Done THEN InOut.Read(ch);  Done := Done & InOut.Done END
  12.   END Char;
  13.  
  14.   PROCEDURE Int(VAR p: INTEGER);
  15.   BEGIN InOut.ReadInt(p); Done := Done & InOut.Done
  16.   END Int;
  17.  
  18.   PROCEDURE LongInt(VAR i: LONGINT);
  19.   BEGIN
  20.        IF Done THEN InOut.ReadLongInt(i); Done := Done & InOut.Done END
  21.   END LongInt;
  22.  
  23.   PROCEDURE Real(VAR p: REAL);
  24.   BEGIN InOut.ReadReal(p); Done := Done & InOut.Done
  25.   END Real;
  26.  
  27.   PROCEDURE LongReal(VAR p: LONGREAL);
  28.   BEGIN
  29.        IF Done THEN InOut.ReadLongReal(p); Done := Done & InOut.Done END
  30.   END LongReal;
  31.  
  32.   PROCEDURE Name(VAR nme: ARRAY OF CHAR);
  33.   BEGIN
  34.        IF Done THEN InOut.ReadString(nme); Done := Done & InOut.Done END
  35.   END Name;
  36.  
  37.   PROCEDURE String(VAR str: ARRAY OF CHAR);
  38.   CONST CR = 15C;  NUL = 0C;
  39.   VAR ch: CHAR;  j: INTEGER;
  40.   BEGIN
  41.       IF Done THEN
  42.           REPEAT  Char(ch)  UNTIL ((ch # " ") & (ch # CR)) OR ~Done;
  43.           j := 0;
  44.           WHILE Done & (ch # " ") & (ch # CR) DO  
  45.               IF j < SIZE(str) - 1 THEN str[j] := ch;  INC(j)  END;
  46.               Char(ch)
  47.           END;
  48.           str[j] := NUL; Done := j # 0
  49.       END
  50.   END String;
  51.  
  52. BEGIN Done := TRUE
  53. END In.
  54.